home *** CD-ROM | disk | FTP | other *** search
- .m4 4
- .m1 4
- .ow 72
- .rm 72
- .in 3
- .nf
- MS-DOS version of ROFF4 modified by Glenn Nelson
- .in +5
- 17 November 1984.
- 418B Locust St.
- Santa Cruz, CA 95060
- 408-429-4235 (work), 408-429-8-429 (home)
- .in -5
- .fi
- .sp
- This document can be printed by typing ^Broff4#mx80#ibm.doc#>#prn^b.
- It should work with other printers as defined in the files on this disk,
- but one warning - I used italics, defined similar to bold.
- If your printer cannot recognize carat-I sequences
- (Icouldn't figure out
- how to print carats!), just read this file.
- .sp 2
- This document briefly describes changes and bugs in the version
- of ROFF4 that now works on MS-DOS systems that emulate an IBM-PC.
- You can use it by ^Broff4#[options]#^Ifile1#[file2#...]^i#>#prn^b,
- to output directly to your printer. If you want the wall chart
- listing (^B-g^b#option), the ^B-g^b should be last on the line
- (before the re-direct). UNIX user's should note that unlike nroff,
- macro files are included as ordinary files on the command line,
- and not as -m options. Hence ^Broff4#mx80#^Imyfile^i#>#prn^b for output
- with special graphics on an Epson.
- .sp
- ^BCompiling and Linking^b
- .br
- To compile and link with DeSmet C, type ^BROFF^b, the batch file
- does the rest.
- Note new file ^Ibdsjunk.h^i - some things that are noramlly
- in ^Ibdscio.h^i, and FERR has been added to ^Istdio.h^i from DeSmet.
- There are batch files and other files on this disk that apply
- to C86 (Computer Innovations); good luck to anyone who wastes their
- time with it.
- .sp
- All the source has been modified for conditional compiles for BDS,
- DeSmet, and Computer Innovations (C86). I finally got it working
- with DeSmet when I found out that they had fixed the re-direct bug
- in version 2.4.
- (It used to be that stderr got re-directed along
- with stdout. With ROFF4 this is a real disaster since so much goes
- out to stderr, assumed to always be the operator's display.)
- .sp
- I have a Micromint (Steve Ciarcia's computer from BYTE) running
- PC-DOS version 2.00 - that's right, PC-DOS, not MS-DOS. Although
- my COM ports don't work with most software, the printer port works
- fine with ROFF4.
- ROFF4 has been compiled with DeSmet C (from C Ware in Sunnyvale),
- and has been tested to
- do things as complicated as producing the wall chart of
- special characters for an Epson MX-80. However, I probably won't
- be using this much as we just got an Imagen laser printer and
- Knuth's TeX phototypesetter software in our lab. Well, this was
- a fun project.
- .sp
- ^BBDS-C exceptions^b
- .br
- The program may no longer compile with BDS, due to usage of #if
- conditionals. It definitely will not link properly after what I did
- to ^Iroff4.h^i. I prefixed all declarations with ^Bextern^b,
- and renamed the old ^Iroff4.h^i as ^Iroffdata.c^i. Thus all globals
- are declared in one file, and merely named as externs in a universal
- include file. This was necessary for C86, though not for DeSmet;
- it is a big mistake for BDS, but is the correct thing for UNIX.
- fortunately DeSmet takes it either way.
- .sp
- ^BBUGS^b
- .br
- I fixed a few bugs, most notably the notorious char vs. int problem.
- The form of the #if statements is a little gross, but DeSmet didn't like
- expressions in the conditional, and one or both of them didn't
- recognize #elseif. C86 could handle some expressions, but not something
- like #if (BDS || C86). In places you will see code in conditional
- compiles that is no different. It's probably there because I thought
- it might be a problem, or was too lazy to clean it up.
- .sp
- I noticed when printing this that when bold then later italics
- were turned on, if the line continues on to the next line
- before italics is turned off, then even the bold-only text gets
- italicized.
- .sp
- ^BEditorial, Flames and Apology^b
- .br
- When I found out the stderr bug in DeSmet had been fixed I gladly
- abandoned my efforts with C86,
- called C Ware and paid for my bootleg
- copy, informing them of such. I'm happy to say that they were
- thankful for my honesty and praise, rather than angry with my theft;
- I am once again a student, a partial explanation for my stinginess.
- The new compiler arrived the next day!
- .sp
- Just as with BDS-C for 8-bitters, this a
- great product for the MS-DOS world at a price that can't be beat.
- I use their visual editor all the time because it's so fast and
- simple. If you like ^Ivi^i, you'll appreciate this.
- They deserve your support in terms of $$$. I pay for it because I use
- it and prefer nothing else at any price.
- .sp
- I never got it working with C86.
- The only reason I tried was because of the above mentioned DeSmet
- re-direct problem.
- I know this is an optimizing compiler and must produce better code
- but in my limited experience there is little difference in size.
- Not only that, but C86 is a 4 pass compiler with each pass a seperate
- file on disk! It honestly takes more than 8 times as long to compile
- and link ROFF4 - over 15 minutes as opposed to less than 2!
- It doesn't have a symbolic debugger, costs $350, and I never got
- ROFF4 working! And this is supposed to be the best around!
- .sp
- The problem with C86 was never determined. Every time I ran ROFF4
- I got different output. I was testing it with ^Broff4#mx80#-g#>#prn^b,
- which should create a wall chart of the Greek and other symbols that
- have been defined. Sometimes I got no stderr messages at all. At best
- I would get the wall chart, but every character translated into itself!
- I think the stack may have been too small - presumably then problem
- is with the C86 - IBM linker interface.
- .sp
- ^BThe End^b
- .br
- I hope this is useful to many, and I'm glad I finally got a chance
- to make a contribution to our favorite user's group.